Many computing devices can run multiple programs concurrently, some being used by the user and others running in the background or ready to be used by the user. Running multiple programs concurrently typically allows the user to quickly switch between programs that he or she desires to use. However, running multiple programs concurrently is not without its problems. One such problem is that running multiple programs concurrently can use significant amounts of resources (such as processor time, memory, etc.). This use of resources can lead to increased power consumption, and reduced battery life for battery powered computing devices.